package cn.edu.hnu.gpg.service;

import cn.edu.hnu.gpg.entity.Questionnaire;

import java.util.List;

public interface QuestionnaireService {

    /**
     * 获取所有的问卷内容
     * @return 以List的方式返回整个问卷内容
     */
    List<Questionnaire> getAllQuestionnaire();

    /**
     * 通过指定的id获取具体的某一个问题对象
     * @param questionnaire_index 问题的序列号
     * @return 对应的Questionnaire对象
     */
    Questionnaire findQuestionnaireByQnId(byte questionnaire_index);

    /**
     * 管理员可以使用此函数进行修改问卷中的某些信息
     * @param questionnaire 数据修改后的questionnaire对象
     * @return 是否修改成功
     */
    boolean modifyQuestion(Questionnaire questionnaire);

    /**
     * 通过此函数，管理员可以通过问卷中的问题索引号进行修改问题
     * @param questionnaire_index 问卷的问题索引号
     * @param newQuestion 新的问题描述
     * @param newOptions 新的问题选项（存储为json形式）
     * @return 是否修改成功
     */
    boolean modifyQuestion(byte questionnaire_index,String newQuestion,String newOptions);
}
